The present invention relates to packet networks and, more particularly, improved transport layer performance over wireless links.
As pointed out by A. V. Bakre et al in xe2x80x9cImplementation and Performance Evaluation of Indirect TCPxe2x80x9d IEEE Transactions on Computers, Vol. 46, No. 3, March 1997 at pp. 260-278, wireless links are slower and less reliable compared to wired links and consequently the use of existing network protocols, which were developed mainly for the high bandwidth and faster wired links, will create unique performance problems arising from host mobility and due to the characteristics of the wireless medium. An indirect protocol model was proposed by Bakre et al so that whenever an interaction between two IP hosts on an internetwork, such as between a mobile host and a stationary host, involves communication over two drastically different kinds of media (e.g., wireless and wired), the interaction is split into two separate interactionsxe2x80x94one for each kind of communication medium. A fixed network protocol such as TCP is used for communication between the fixed host and a mobility support router (base station) and a wireless protocol (e.g., wireless TCP) for communication between the mobile host and the mobility support router (see Section 3 xe2x80x9cIndirect Protocolsxe2x80x9d at pp. 261-2). The protocol stack is split at the mobility support router in order to enable the taking of corrective measures to address the change in the environment from wired to wireless.
A criticism of this approach is some resulting performance issues. Every packet incurs the overhead of going through TCP protocol processing twice at the base station, although extra copies are avoided by an efficient implementation. Another disadvantage of this approach is that the end-to-end semantics of TCP acknowledgements is violated, since acknowledgements to packets can now reach the source even before the packets actually reach the mobile host. Also, since this protocol maintains a significant amount of state at the base station per TCP connection, handoff procedures tend to be complicated and slow. These problems are described in detail in the article xe2x80x9cA Comparison of Mechanisms for Improving TCP Performance Over Wireless Linksxe2x80x9d by H. Balakrishnan et al appearing in Proc. ACM SIGCOMM ""96, August 1996 and also in the more recent article xe2x80x9cTCP Performance Issues over Wireless Linksxe2x80x9d by G. Xylomenos et al, IEEE Communications, April 2001.
An object of the present invention is to optimize throughput of applications transmitted over a wireless link interfacing with other, non-wireless links.
According to a first aspect of the invention, a method for use in a packet-based communication between two end points in a communication network during which a plurality of packets are communicated at least in part over a wireless link is characterized by identifying or recognizing a packet as a special packet at an end point of the wireless link, and by applying special treatment to the special packet at the end point of the wireless link to ensure reliable transmission over the wireless link.
Further according to the first aspect of the invention, the special treatment is applied at a link layer of the end point of the wireless link.
Further still according to the first aspect of the invention, the end point of the wireless link comprises a sending endpoint for sending the plurality of packets over the wireless link. The special treatment may be applied at a link layer of the sending end point of the wireless link.
Still in accord with the first aspect of the present invention, the identifying or recognizing comprises identifying the special packet at an application layer of the endpoint and by notifying a link layer of the endpoint for applying the special treatment to the identified special packet at the link layer.
Still further in accord with the first aspect of the invention, the identifying or recognizing comprises recognizing the special packet at a link layer of the endpoint and by controlling the link layer of the endpoint for applying the special treatment to the special packet at the link layer. Further yet in accord with the first aspect of the invention, the recognizing comprises recognizing the special packet by timing arrivals of packets having a same characteristic code associated therewith and identifying a packet having the code arriving a selected period after arrival of a last packet having the code as the special packet.
According to a second aspect of the invention, a device for use in a packet-based communication between two end points in a communication network during which a plurality of packets are communicated at least in part over a wireless link is characterized by means for identifying or recognizing a packet as a special packet at an end point of the wireless link, and by means for applying special treatment to the special packet at the end point of the wireless link to ensure reliable transmission over the wireless link.
Further according to the second aspect of the invention, the special treatment is applied at a link layer of the end point of the wireless link.
Further still according to the second aspect of the invention, the end point of the wireless link comprises a sending endpoint for sending the plurality of packets over the wireless link. As mentioned above, the special treatment may be applied at a link layer of the sending end point of the wireless link.
Still in accord with the second aspect of the present invention, the identifying or recognizing comprises identifying the special packet at an application layer of the endpoint and by notifying a link layer of the endpoint for applying the special treatment to the identified special packet at the link layer.
Still further in accord with the second aspect of the invention, the identifying or recognizing comprises recognizing the special packet at a link layer of the endpoint and by controlling the link layer of the endpoint for applying the special treatment to the special packet at the link layer.
Further yet in accord with the second aspect of the invention, the recognizing comprises recognizing the special packet by timing arrivals of packets having a same characteristic code associated therewith and identifying a packet having the code arriving a selected period after arrival of a last packet having the code as the special packet.
According to a third aspect of the invention, a system having a pair of hosts communicating packets in an end-to-end application over communication links including wireless links, each wireless link having a mobile host at one end and an access network at another end, is characterized by an enhancement in a link layer at an end of the wireless link for providing special link layer treatment to a packet identified as a special packet for ensuring reliable transmission of the special packet over the wireless link.
Further according to the third aspect of the invention, the application identifies the special packet as special to the link layer when providing the special treatment at an end of the wireless link co-located with the application.
According still further to the third aspect of the invention, the link layer inspects the packets for identifying the special packet when the link layer is providing the special treatment at an end of the wireless link not co-located with the application.
Further still according to the third aspect of the invention, the enhancement is characterized by means for identifying or recognizing the special packet at an endpoint of the wireless link, and by means for applying the special link layer treatment to the special packet at the end. The end of the wireless link may comprise a sending end for sending the packets over the wireless link.
As compared to the snoop TCP mechanism discussed in the above-mentioned articles, the present invention does not require any caching of TCP data, and does not manipulate the original TCP messages (i.e., there is no hiding of duplicate acknowledgements and no TCP-level retransmission by the snooping entity). The present invention relies on link and physical layer special treatment, which can include link level retransmissions that are more efficient than TCP level retransmissions.
As compared to splitting the original TCP connection into separate connections for the wired and wireless parts of the path and using performance enhancing proxies, the present invention does not suffer from the drawbacks of violation of the end-to-end TCP semantics (acknowledgements reaching the sender before the data reaches the destination), overhead caused by back-to-back processing, and considerable per-connection state maintenance.
The advantages of the present invention also include link level and/or physical level special treatment providing faster recovery than application or transport level retransmission. In addition, for some application protocols such as TCP, it is very beneficial to avoid going into a timeout, since recovery from a timeout is very costly to the throughput. Another advantage of the present invention is that no modification to the application protocol (e.g., TCP) is required. The end-to-end principle and semantics of the application (e.g., TCP) is preserved. There is no need to cache TCP data. Some parts of the invention assume an enhancement in the network, but it is internal to the access network. A proprietary solution is conceivable within the access network, such as the Radio Access Network (RAN) of the Third Generation Partnership Project (3GPP). So another advantage is that no modification to existing air interface protocols (e.g., EDGE, WCDMA, CDMA 2000) is required.
Although parts of the invention require snooping of the application traffic by the network, other parts, which do not require snooping, can be applied independently. Some parts of the invention require state information to be maintained in the network. However, no major scalability problem is expected, because unlike the backbone network, the number of connections is relatively small, due to the radio link limitations. The per-connection state information to be maintained is also limited. Note again that the other aspects of the invention can be applied independently.
In other words, modifications internal to the mobile terminal can be implemented by themselves for special treatment of critical messages coming from the terminal, such as SYN and Sparse ACKs. In the access network, modifications may be needed for special treatment of critical messages coming from the remote TCP endpoint, such as ACK to SYN and Sparse ACKs. If the snooping entity and the link level are not co-located, some interfaces may be impacted. However, since an access network is in practice likely from the same supplier, a proprietary implementation is possible. Note that a partial benefit can be independently gained by modification internal to the mobile terminal alone by improving the chance of SYN and Sparse ACK successful delivery.
These and other objects, features and advantages of the present invention will become more apparent in light of the following detailed description of a best mode embodiment thereof, as illustrated in the accompanying drawing.